package org.sipsl.gisystems.gentest.rte.util;

public class ExItem<T> {

	private T value;
	private boolean valid;
	private boolean valid2;
	
	public ExItem(){
		valid = false;
		valid2 = false;
	}
	public void setValue(T a){
		value = a;
		valid = true;
		valid2 = true;

	}
//	public void setValue(T a, int log){
//		GenericUtil.LOG("ExItem<T>.setValue() "+ a.toString(), 1, log);
//		value = a;
//		valid = true;
//		valid2 = true;
//
//	}
//	public T getValue(int log) throws RteException{
//		if (!valid){
//			GenericUtil.LOG("ExItem<T> not valid ", 1, log);
//			throw new RteException("invalid item");
//		}
//		GenericUtil.LOG("ExItem<T>.getValue() "+ value.toString(), 1, log);
//		return value;
//	}

	public T getValue() throws RteException{
		if (!valid){
			throw new RteException("invalid item");
		}
		return value;
	}
	public boolean isValid(){
		return valid;
	}
	public boolean isValid2(){
		return valid2;
	}

	public void unSet(){
		valid = false;
	}
	
	public void unSet2(){
		valid2 = false;
	}

}
